let domain='https://hks-sys.dindong.cn/api/';
function formatNumber (n) {
  const str = n.toString()
  return str[1] ? str : `0${str}`
}

export function formatTime (date,deadline=0) {
  const year = date.getFullYear()
  const month = date.getMonth() + 1
  const day = date.getDate()+deadline

  const hour = date.getHours()
  const minute = date.getMinutes()
  const second = date.getSeconds()

  const t1 = [year, month, day].map(formatNumber).join('/')
  const t2 = [hour, minute, second].map(formatNumber).join(':')

  return `${t1} ${t2}`
}

export function previewImage(current,urls){
  wx.previewImage({
    current: current, // 当前显示图片的http链接
    urls: [urls], // 需要预览的图片http链接列表
    fail:err=>{console.log(err)}
  })
}

export function navigateTo(url){
  console.log(url)
  wx.navigateTo({
    url:url,
    fail(err){
      console.log(err)
    }
  })
}


export function redirectTo(url){
  console.log(url)
  wx.redirectTo({
    url:url,
    fail:err=>{
      console.log(err)
    }
  })
}

export function switchTab(url){
  console.log(url)
  wx.switchTab({
    url:url,
    fail:err=>{
      console.log(err)
    }
  })
}

export function sexTag(value){
  if(value=="男"){
    return 1
  }else if(value=="女"){
    return 2
  }else{
    return 0
  }
}

export function sexTag1(value){
  if(value==1){
    return '男'
  }else if(value==2){
    return '女'
  }else{
    return '保密'
  }
}



export function showModal(title,content){
  var _this=this
  let promise=new Promise((resolve ,reject) => {
    wx.showModal({
      title: title,
      content: content,
      success (res) {
        if (res.confirm) {
          resolve(true)
        } else if (res.cancel) {
           resolve(false)
        }
      },
      fail:err=>{
        reject(err)
      }
    })
  })
  return promise
}

//本地选取一张图片上传
export function upLoadImage(that,item){
  //配合canvas实现
  var _this=that
  let promise=new Promise((resolve ,reject) => {

    wx.chooseImage({
    count:1,

    sizeType: ['original','compressed'],
    success:async function(res){
      wx.showLoading({
        title:'上传中',
        mask:true
      })
      const size=res.tempFiles[0].size;//获取图片大小；
      let uploadTask=  wx.uploadFile({
          url:`${domain}`+item,
          filePath:res.tempFilePaths[0],
          name:"photo",
          header: {
          'content-type': 'application/json' // 默认值
          },
          success:data=>{
            wx.hideLoading()
            resolve(data)
          },
          fail:err=>{
            wx.hideLoading()
            reject(err)

          }
        })
        uploadTask.onProgressUpdate((res=>{
          wx.showLoading({
            title:`已上传:${res.progress}%`,
            mask:true
          })
        }))
      }
    // }
   })
  })
  return promise
}



 function uploadFile(path){
   //上传文件
 const promise=new Promise((reject,resolve)=>{
 let uploadTask=  wx.uploadFile({
     url:`${domain}file/upload-img`,
     filePath:path,
     name:"photo",
     header: {
     'content-type': 'application/json' // 默认值
     },
     success:data=>{

       wx.hideLoading()

       resolve(data)
     },
     fail:err=>{
       wx.hideLoading()
       reject(err)

     }
   })
 }).catch((e) => {return e });

 return promise
 }

 function toQueryString(obj) {
            //定义一个空数组
            var ary = [];
            var str;
            //对象的遍历操作
            for (var i in obj) {
                //将对象名push到数组里
                ary.push(i);
                //对象的值
                ary.push(`=${obj[i]}&`);
            }
            //将数组转变成字符串
            str = ary.join('');
            //将字符串最后一个&符剪切走
            str=str.slice (0,str.length-1);
                return str;
        }


export  /**
* 检测当前的小程序
* 是否是最新版本，是否需要下载、更新
*/
function checkUpdateVersion() {
 //判断微信版本是否 兼容小程序更新机制API的使用
 if (wx.canIUse('getUpdateManager')) {
   //创建 UpdateManager 实例
   const updateManager = wx.getUpdateManager();
   //检测版本更新
   updateManager.onCheckForUpdate(function(res) {
     // 请求完新版本信息的回调
     if (res.hasUpdate) {
       //监听小程序有版本更新事件
       updateManager.onUpdateReady(function() {
         //TODO 新的版本已经下载好，调用 applyUpdate 应用新版本并重启 （ 此处进行了自动更新操作）
        //  updateManager.applyUpdate();

        wx.showModal({
            title: "更新提示",
            content: "新版本已经准备好，是否重启应用？",
            success: function (res) {
                if (res.confirm) {
                    // 新的版本已经下载好，调用 applyUpdate 应用新版本并重启
                    updateManager.applyUpdate();
                }
            }
        });
       })
       updateManager.onUpdateFailed(function() {
         // 新版本下载失败
         wx.showModal({
           title: '已经有新版本喽~',
           content: '请您删除当前小程序，到微信 “发现-小程序” 页，重新搜索打开哦~',
         })
       })
     }
   })
 } else {
   //TODO 此时微信版本太低（一般而言版本都是支持的）
   wx.showModal({
     title: '溫馨提示',
     content: '当前微信版本过低，无法使用该功能，请升级到最新微信版本后重试。'
   })
 }
}

export function share(res,title,path){
    return {
      title:title,
      path:path,
      success(res){
        wx.showToast({
          title:"转发成功",
        })
      },
      fail(err){
        console.log(err)
      }
    }
}

export function formatSeconds(value) {   //把时间买秒数转换成时-分-秒
  var secondTime = parseInt(value);// 秒
  var minuteTime = 0;// 分
  var hourTime = 0;// 小时
  if(secondTime > 60) {//如果秒数大于60，将秒数转换成整数
      //获取分钟，除以60取整数，得到整数分钟
      minuteTime = parseInt(secondTime / 60);
      //获取秒数，秒数取佘，得到整数秒数
      secondTime = parseInt(secondTime % 60);
      //如果分钟大于60，将分钟转换成小时
      if(minuteTime > 60) {
          //获取小时，获取分钟除以60，得到整数小时
          hourTime = parseInt(minuteTime / 60);
          //获取小时后取佘的分，获取分钟除以60取佘的分
          minuteTime = parseInt(minuteTime % 60);
      }
  }
  var result = "" + parseInt(secondTime) + "秒";

  if(minuteTime > 0) {
      result = "" + parseInt(minuteTime) + "分" + result;
  }
  if(hourTime > 0) {
      result = "" + parseInt(hourTime) + "小时" + result;
  }
  return result;
}

export function copyText (data){
  wx.setClipboardData({
      data: data,
      success: function(res) {
        wx.getClipboardData({
          success: function(res) {
            wx.showToast({
              title:'复制成功',
              icon:'none'
            })
          }
        })
      }
    })
}

export function goDetails (src) {     //跳转到文章页面
  // var src="https://h5.rzkeji.com/article?id=9"
  console.log(src,666)
    if(src!="" && src!=null){
      if(src.indexOf('page')==-1){
        if(src.indexOf('shop')!=-1)
        {
          var id=src.split('?id=')[1];
          wx.navigateTo({
            url:"../shop/main?shopId="+id
          })
        }else{
          var src=encodeURIComponent(src)
          wx.navigateTo({
            url:"/pages/drawList/articleDetails/articleDetails?url="+src
          })
        }
      }else if(src.indexOf('page')!=-1){
        wx.switchTab({
          url:src
        })
      }
    }
}

export function showToast(title,icon="none",time=1500){
  uni.showToast({
    title:title,
    icon:icon,
    duration:time=="" ? 1500 :time
  })
}

export default {
  formatNumber,
  formatTime,
  navigateTo,
  redirectTo,
  upLoadImage,
  uploadFile,
  previewImage,
  switchTab,
  sexTag,
  sexTag1,
  showModal,
  checkUpdateVersion,
  toQueryString,
  share,
  copyText,
  goDetails,
  showToast
}
